//
// Created by Yun on 2025/2/12.
//

#ifndef FRAMEWORK_DEV_SYS_H
#define FRAMEWORK_DEV_SYS_H

#include "dev_common_type.h"
#include "sys_interface.h"

enum Dev_Sys_Debug_Type{
    Dev_Sys_Debug_SWD = 0U,
    Dev_Sys_Debug_JTAG,
};


/* 系统设备配置结构体 */
typedef struct Dev_Sys_Cfg{
    Sys_Interface_TypeDef* pstDevSysInterface; // 系统操作接口
}Dev_Sys_Cfg_TypeDef;

/*!
 *  @brief 系统设备初始化
 * @param pstDevSysCfg 系统设备配置结构体指针
 * @return DEV_OK:初始化成功;DEV_ERROR:初始化失败
 */
void Dev_Sys_Register(Sys_Interface_TypeDef* pstDevSysInterface);

/*!
 *  @brief 系统延时函数
 * @param u32Time 延时时间
 */
void Dev_Sys_Delay(uint32_t u32Time);

void Dev_Sys_Init(uint8_t u8Mode);

#endif //FRAMEWORK_DEV_SYS_H
